package cn.duli.xianer.service;

import cn.duli.xianer.pojo.PrivateMsg;
import com.github.pagehelper.Page;

import java.util.List;

public interface PrivateMsgService {

    // 增加私信
    int save(PrivateMsg privateMsg);

    // 根据用户的发送者id(pmUser)查看该用户与其他用户的私信列表
    List<PrivateMsg> findAllByUser(Integer pmUser);

    // 根据私信id查看私信详情
    PrivateMsg findById(Integer pmId);

    // 根据用户的发送者id(pmUser)和接收者id(pmFriend)查看两用户私信详情
    Page<PrivateMsg> findByUserAndFriend(Integer pmUser, Integer pmFriend);

    // 根据用户的发送者id(pmUser)和接收者id(pmFriend)查看两用户未读消息数量
    int findNotReadCount(Integer pmUser, Integer pmFriend);

    // 修改阅读状态和阅读时间
    int updateRead(Integer id);

    // 根据用户的发送者id(pmUser)和接收者id(pmFriend)查看两用户未读消息
    List<PrivateMsg> findNotRead( Integer pmUser, Integer pmFriend);

    // 根据私信id删除此条私信
    void deleteById(Integer pmId);

    // 私信列表页面删除两指定用户间的整个会话
    void deleteAll(Integer pmUser, Integer pmFriend);
}
